The sum of the squares of the first ten natural numbers is
$$1^2 + 2^2 + \cdots + 10^2 = 385.$$The square of the sum of the first ten natural numbers is
$$(1 + 2 + ... + 10)^2 = 55^2 = 3025.$$Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is $3025 - 385 = 2640$.
Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum.
In [1]:
N = 100
print(sum(range(1,N+1))**2 - sum(k**2 for k in range(1, N+1)))
The answer can be computed more efficiently using the formulas $\sum_{k=1}^n k = \frac12 n(n+1)$ and $\sum_{k=1}^n k^2 = \frac16 n(n+1)(2n+1)$.
In [2]:
print((N*(N+1)//2)**2 - N*(N+1)*(2*N+1)//6)
In [ ]: